package com.ruibo.tax.model;

import com.ruibo.tax.model.base.SendBasic;
import lombok.Getter;
import lombok.Setter;
import org.hibernate.annotations.Fetch;
import org.hibernate.annotations.FetchMode;

import javax.persistence.*;
import java.util.Set;


/**
 * @description: 排污许可基本信息
 * @author: 孙 峰
 * @time: 2020/10/14 10:28
 */
@Getter
@Setter
@Entity
@Table(name = "hbjh_xkz_jbxx")
public class HBJHXKZJBXX extends SendBasic {
    //主键
    private String UUID;

    //数据归属_省
    private String SJGS;
    //数据归属_地市
    private String DSGS;
    //数据归属_区县
    private String QXGS;
    //申请类型
    private String SQLX;

    //排污许可证编号
    private String PWXKZBH;
    //单位名称
    private String DWMC;
    //统一社会信用代码
    private String TYSHXYDM;
    //组织机构代码
    private String ZZJGDM;
    //营业执照号码
    private String YYZZHM;
    //行业类别
    private String HYLB;
    //生产经营场所地址
    private String SCJYCSDZ;
    //所在省份区划代码
    private String SZSFQHDM;
    //所在地市区划代码
    private String SZDSQHDM;
    //所在区县区划代码
    private String SZQXQHDM;
    //街道乡镇代码
    private String JDXZDM;
    //技术负责人
    private String JSFZR;
    //固定电话
    private String GDDH;
    //移动电话
    private String YDDH;
    //许可有效期限起
    private String XKYXQXQ;
    //许可有效期限止
    private String XKYXQXZ;
    //核发日期
    private String HFRQ;
    //投产日期
    private String TCRQ;
    //是否属于重点区域
    private String SFSYZDQY;
    //主要污染物类别
    private String ZYWRWLB;

    //核发环保机关代码
    private String HFHBJGDM;
    //核发环保机关名称
    private String HFHBJGMC;


    @Fetch(FetchMode.SUBSELECT)
    @OneToMany(mappedBy = "hbjhxkzjbxx", cascade = CascadeType.ALL, fetch = FetchType.EAGER)
    private Set<DQWRPFK> DQWRPFKXX;

    @Fetch(FetchMode.SUBSELECT)
    @OneToMany(mappedBy = "hbjhxkzjbxx", cascade = CascadeType.ALL, fetch = FetchType.EAGER)
    private Set<SWRWPFK> SWRWPFKXX;

    @Fetch(FetchMode.SUBSELECT)
    @OneToMany(mappedBy = "hbjhxkzjbxx", cascade = CascadeType.ALL, fetch = FetchType.EAGER)
    private Set<DQPFXKXZ> DQPFXKXZXX;

    @Fetch(FetchMode.SUBSELECT)
    @OneToMany(mappedBy = "hbjhxkzjbxx", cascade = CascadeType.ALL, fetch = FetchType.EAGER)
    private Set<FSPFXKXZ> FSPFXKXZXX;
}
